The present disclosure is related to multi-core computer systems having heterogeneous hardware and, more particularly, to efficient mapping of threads onto the heterogeneous hardware based, at least in part, on the execution characteristics of a software application executed on the multi-core computer system.